Fix time skipping for dotnet SDK#2805
Fix time skipping for dotnet SDK#2805Quinn-With-Two-Ns wants to merge 4 commits intotemporalio:masterfrom
Conversation
4c39801 to
bc6bb16
Compare
...test-server/src/main/java/io/temporal/internal/testservice/TestWorkflowMutableStateImpl.java
Show resolved
Hide resolved
temporal-test-server/src/main/java/io/temporal/internal/testservice/TestWorkflowService.java
Show resolved
Hide resolved
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 1d3c13c184
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| if (attempt != operation.getData().getAttempt() | ||
| || isTerminalState(operation.getState())) { | ||
| || isTerminalState(operation.getState()) | ||
| || operation.getState() == State.STARTED) { |
There was a problem hiding this comment.
Restrict STARTED skip to start-request timeouts
This new State.STARTED short-circuit disables cancel-request timeouts as well as start-request timeouts. Nexus cancel requests are sent from STARTED and remain in STARTED (STARTED + REQUEST_CANCELLATION -> STARTED in StateMachines), so timeoutNexusRequest now always throws NOT_FOUND for cancel timers and never runs the fail/retry/unlock path. In runs where a cancel task is dropped or never answered, the cancel request will no longer time out and time-skipping can stay locked indefinitely.
Useful? React with 👍 / 👎.

Fix time skipping for dotnet SDK. Fix some Graal config and fix some issues with Nexus operation cancellation.